#ifndef BITMAP_H
#define BITMAP_H

#include "types.h"

typedef struct _bitmap_t{
    int bit_count;//how many pages of 4kB
    uint8_t *bits;
}bitmap_t;

void bitmap_init(bitmap_t *bitmap,uint8_t *bits, int count, int init_bit);

int bitmap_byte_count(int bit_count);
int bitmap_get_bit(bitmap_t *bitmap,int index);
void bitmap_set_bit(bitmap_t *bitmap,int index,int count,int bit);
int bitmap_is_set(bitmap_t *bitmap,int index);
int bitmap_alloc_nbits(bitmap_t *bitmap,int bit,int count);



#endif // !BITMAP_H
